package com.woniuxy.service;

import com.github.pagehelper.PageInfo;
import com.woniuxy.entity.po.system.Log;
import com.woniuxy.util.PageParam;
import com.woniuxy.util.ResponseData;

import java.util.List;

/**
 * @BelongsProject: community
 * @BelongsPackage: com.woniuxy.service
 * @Author: Quan
 * @Date: 2025/3/3 14:29
 */
public interface LogService {
	/**
	 * @Description: 有条件的查询log
	 * @Param: log - [Log]
	 * @Author: Quan
	 * @Date: 2025/3/3
	*/
	ResponseData<?> queryLogInfo(PageParam<Log> pageParam);

	/**
	 * @Description: 查询log中的username
	 * @Param:
	 * @Author: Quan
	 * @Date: 2025/3/3
	*/
	List<String> queryUsername();


	/**
	 * @Description: 向log中存数据
	 * @Param: log - [Log]
	 * @Author: Quan
	 * @Date: 2025/3/3
	*/
	void addLog(Log log);

	void delLog(String cutOffTime);

	/**
	 * @Description: 重置日志的保留时间
	 * @Param: [retention]
	 * @return: com.woniuxy.util.ResponseData<?>
	 * @Author: Quan
	 * @Date: 2025/4/7
	 */
	ResponseData<?> setRetention(Integer retention);


	/**
	 * @Description: 从log_retention中获取保留时间
	 * @Param: []
	 * @return: com.woniuxy.util.ResponseData<?>
	 * @Author: Quan
	 * @Date: 2025/4/7
	 */
	ResponseData<?> getRetention();
}
